package org.admanager.soapattern.plugin.diagram.part;

import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

import org.admanager.soadmanagement.plugin.soadmanagement.PComponent;
import org.admanager.soadmanagement.plugin.soadmanagement.PComponentReference;
import org.admanager.soadmanagement.plugin.soadmanagement.PComponentService;
import org.admanager.soadmanagement.plugin.soadmanagement.PComposite;
import org.admanager.soadmanagement.plugin.soadmanagement.PConstraint;
import org.admanager.soadmanagement.plugin.soadmanagement.PElement;
import org.admanager.soadmanagement.plugin.soadmanagement.PMultiplicity;
import org.admanager.soadmanagement.plugin.soadmanagement.PReference;
import org.admanager.soadmanagement.plugin.soadmanagement.PRole;
import org.admanager.soadmanagement.plugin.soadmanagement.PService;
import org.admanager.soadmanagement.plugin.soadmanagement.Pattern;
import org.admanager.soapattern.plugin.diagram.edit.parts.PComponent2EditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PComponentComponentCompartmentEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PComponentEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PComponentInnerComponentCompartmentEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PComponentReference2EditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PComponentReferenceEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PComponentReferenceTargetEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PComponentService2EditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PComponentServiceEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PCompositeCompositeCompartmentEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PCompositeEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PConstraintEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PElementMultiplicityEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PElementRolesEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PMultiplicityEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PReferenceEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PReferencePromoteEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PRoleEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PRoleRoleCompartmentEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PServiceEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PServicePromoteEditPart;
import org.admanager.soapattern.plugin.diagram.edit.parts.PatternEditPart;
import org.admanager.soapattern.plugin.diagram.providers.SOADManagementMetamodelElementTypes;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.gmf.runtime.notation.View;

/**
 * @generated
 */
public class SOADManagementMetamodelDiagramUpdater {

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/getSemanticChildren(
			View view) {
		switch (SOADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case PatternEditPart.VISUAL_ID:
			return getPattern_1000SemanticChildren(view);
		case PComponentComponentCompartmentEditPart.VISUAL_ID:
			return getPComponentComponentCompartment_7005SemanticChildren(view);
		case PCompositeCompositeCompartmentEditPart.VISUAL_ID:
			return getPCompositeCompositeCompartment_7006SemanticChildren(view);
		case PComponentInnerComponentCompartmentEditPart.VISUAL_ID:
			return getPComponentInnerComponentCompartment_7007SemanticChildren(view);
		case PRoleRoleCompartmentEditPart.VISUAL_ID:
			return getPRoleRoleCompartment_7008SemanticChildren(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/getPattern_1000SemanticChildren(
			View view) {
		if (!view.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Pattern modelElement = (Pattern) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getElements().iterator(); it
				.hasNext();) {
			PElement childElement = (PElement) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PComponentEditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PCompositeEditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getMultiplicities().iterator(); it
				.hasNext();) {
			PMultiplicity childElement = (PMultiplicity) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PMultiplicityEditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getContainingRoles().iterator(); it
				.hasNext();) {
			PRole childElement = (PRole) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PRoleEditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/getPComponentComponentCompartment_7005SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		PComponent modelElement = (PComponent) containerView.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getService().iterator(); it
				.hasNext();) {
			PComponentService childElement = (PComponentService) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PComponentServiceEditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getReference().iterator(); it
				.hasNext();) {
			PComponentReference childElement = (PComponentReference) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PComponentReferenceEditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/getPCompositeCompositeCompartment_7006SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		PComposite modelElement = (PComposite) containerView.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getReference().iterator(); it
				.hasNext();) {
			PReference childElement = (PReference) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PReferenceEditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getService().iterator(); it
				.hasNext();) {
			PService childElement = (PService) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PServiceEditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getComponent().iterator(); it
				.hasNext();) {
			PComponent childElement = (PComponent) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PComponent2EditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/getPComponentInnerComponentCompartment_7007SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		PComponent modelElement = (PComponent) containerView.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getService().iterator(); it
				.hasNext();) {
			PComponentService childElement = (PComponentService) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PComponentService2EditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getReference().iterator(); it
				.hasNext();) {
			PComponentReference childElement = (PComponentReference) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PComponentReference2EditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/getPRoleRoleCompartment_7008SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		PRole modelElement = (PRole) containerView.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInvariants().iterator(); it
				.hasNext();) {
			PConstraint childElement = (PConstraint) it.next();
			int visualID = SOADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PConstraintEditPart.VISUAL_ID) {
				result.add(new SOADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getContainedLinks(
			View view) {
		switch (SOADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case PatternEditPart.VISUAL_ID:
			return getPattern_1000ContainedLinks(view);
		case PComponentEditPart.VISUAL_ID:
			return getPComponent_2005ContainedLinks(view);
		case PCompositeEditPart.VISUAL_ID:
			return getPComposite_2006ContainedLinks(view);
		case PMultiplicityEditPart.VISUAL_ID:
			return getPMultiplicity_2007ContainedLinks(view);
		case PRoleEditPart.VISUAL_ID:
			return getPRole_2008ContainedLinks(view);
		case PComponentServiceEditPart.VISUAL_ID:
			return getPComponentService_3009ContainedLinks(view);
		case PComponentReferenceEditPart.VISUAL_ID:
			return getPComponentReference_3010ContainedLinks(view);
		case PReferenceEditPart.VISUAL_ID:
			return getPReference_3011ContainedLinks(view);
		case PServiceEditPart.VISUAL_ID:
			return getPService_3012ContainedLinks(view);
		case PComponent2EditPart.VISUAL_ID:
			return getPComponent_3013ContainedLinks(view);
		case PComponentService2EditPart.VISUAL_ID:
			return getPComponentService_3014ContainedLinks(view);
		case PComponentReference2EditPart.VISUAL_ID:
			return getPComponentReference_3015ContainedLinks(view);
		case PConstraintEditPart.VISUAL_ID:
			return getPConstraint_3016ContainedLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getIncomingLinks(
			View view) {
		switch (SOADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case PComponentEditPart.VISUAL_ID:
			return getPComponent_2005IncomingLinks(view);
		case PCompositeEditPart.VISUAL_ID:
			return getPComposite_2006IncomingLinks(view);
		case PMultiplicityEditPart.VISUAL_ID:
			return getPMultiplicity_2007IncomingLinks(view);
		case PRoleEditPart.VISUAL_ID:
			return getPRole_2008IncomingLinks(view);
		case PComponentServiceEditPart.VISUAL_ID:
			return getPComponentService_3009IncomingLinks(view);
		case PComponentReferenceEditPart.VISUAL_ID:
			return getPComponentReference_3010IncomingLinks(view);
		case PReferenceEditPart.VISUAL_ID:
			return getPReference_3011IncomingLinks(view);
		case PServiceEditPart.VISUAL_ID:
			return getPService_3012IncomingLinks(view);
		case PComponent2EditPart.VISUAL_ID:
			return getPComponent_3013IncomingLinks(view);
		case PComponentService2EditPart.VISUAL_ID:
			return getPComponentService_3014IncomingLinks(view);
		case PComponentReference2EditPart.VISUAL_ID:
			return getPComponentReference_3015IncomingLinks(view);
		case PConstraintEditPart.VISUAL_ID:
			return getPConstraint_3016IncomingLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getOutgoingLinks(
			View view) {
		switch (SOADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case PComponentEditPart.VISUAL_ID:
			return getPComponent_2005OutgoingLinks(view);
		case PCompositeEditPart.VISUAL_ID:
			return getPComposite_2006OutgoingLinks(view);
		case PMultiplicityEditPart.VISUAL_ID:
			return getPMultiplicity_2007OutgoingLinks(view);
		case PRoleEditPart.VISUAL_ID:
			return getPRole_2008OutgoingLinks(view);
		case PComponentServiceEditPart.VISUAL_ID:
			return getPComponentService_3009OutgoingLinks(view);
		case PComponentReferenceEditPart.VISUAL_ID:
			return getPComponentReference_3010OutgoingLinks(view);
		case PReferenceEditPart.VISUAL_ID:
			return getPReference_3011OutgoingLinks(view);
		case PServiceEditPart.VISUAL_ID:
			return getPService_3012OutgoingLinks(view);
		case PComponent2EditPart.VISUAL_ID:
			return getPComponent_3013OutgoingLinks(view);
		case PComponentService2EditPart.VISUAL_ID:
			return getPComponentService_3014OutgoingLinks(view);
		case PComponentReference2EditPart.VISUAL_ID:
			return getPComponentReference_3015OutgoingLinks(view);
		case PConstraintEditPart.VISUAL_ID:
			return getPConstraint_3016OutgoingLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPattern_1000ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponent_2005ContainedLinks(
			View view) {
		PComponent modelElement = (PComponent) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComposite_2006ContainedLinks(
			View view) {
		PComposite modelElement = (PComposite) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPMultiplicity_2007ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPRole_2008ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentService_3009ContainedLinks(
			View view) {
		PComponentService modelElement = (PComponentService) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentReference_3010ContainedLinks(
			View view) {
		PComponentReference modelElement = (PComponentReference) view
				.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentReference_Target_4010(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPReference_3011ContainedLinks(
			View view) {
		PReference modelElement = (PReference) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PReference_Promote_4008(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPService_3012ContainedLinks(
			View view) {
		PService modelElement = (PService) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PService_Promote_4009(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponent_3013ContainedLinks(
			View view) {
		PComponent modelElement = (PComponent) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentService_3014ContainedLinks(
			View view) {
		PComponentService modelElement = (PComponentService) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentReference_3015ContainedLinks(
			View view) {
		PComponentReference modelElement = (PComponentReference) view
				.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentReference_Target_4010(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPConstraint_3016ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponent_2005IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComposite_2006IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPMultiplicity_2007IncomingLinks(
			View view) {
		PMultiplicity modelElement = (PMultiplicity) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PElement_Multiplicity_4007(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPRole_2008IncomingLinks(
			View view) {
		PRole modelElement = (PRole) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PElement_Roles_4006(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentService_3009IncomingLinks(
			View view) {
		PComponentService modelElement = (PComponentService) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PService_Promote_4009(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_PComponentReference_Target_4010(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentReference_3010IncomingLinks(
			View view) {
		PComponentReference modelElement = (PComponentReference) view
				.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PReference_Promote_4008(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPReference_3011IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPService_3012IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponent_3013IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentService_3014IncomingLinks(
			View view) {
		PComponentService modelElement = (PComponentService) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PService_Promote_4009(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_PComponentReference_Target_4010(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentReference_3015IncomingLinks(
			View view) {
		PComponentReference modelElement = (PComponentReference) view
				.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PReference_Promote_4008(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPConstraint_3016IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponent_2005OutgoingLinks(
			View view) {
		PComponent modelElement = (PComponent) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComposite_2006OutgoingLinks(
			View view) {
		PComposite modelElement = (PComposite) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPMultiplicity_2007OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPRole_2008OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentService_3009OutgoingLinks(
			View view) {
		PComponentService modelElement = (PComponentService) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentReference_3010OutgoingLinks(
			View view) {
		PComponentReference modelElement = (PComponentReference) view
				.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentReference_Target_4010(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPReference_3011OutgoingLinks(
			View view) {
		PReference modelElement = (PReference) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PReference_Promote_4008(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPService_3012OutgoingLinks(
			View view) {
		PService modelElement = (PService) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PService_Promote_4009(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponent_3013OutgoingLinks(
			View view) {
		PComponent modelElement = (PComponent) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentService_3014OutgoingLinks(
			View view) {
		PComponentService modelElement = (PComponentService) view.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPComponentReference_3015OutgoingLinks(
			View view) {
		PComponentReference modelElement = (PComponentReference) view
				.getElement();
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentReference_Target_4010(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getPConstraint_3016OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PElement_Roles_4006(
			PRole target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.soadmanagement.plugin.soadmanagement.soadmanagementPackage.eINSTANCE
					.getPElement_Roles()) {
				result.add(new SOADManagementMetamodelLinkDescriptor(setting
						.getEObject(), target,
						SOADManagementMetamodelElementTypes.PElementRoles_4006,
						PElementRolesEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PElement_Multiplicity_4007(
			PMultiplicity target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.soadmanagement.plugin.soadmanagement.soadmanagementPackage.eINSTANCE
					.getPElement_Multiplicity()) {
				result.add(new SOADManagementMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						SOADManagementMetamodelElementTypes.PElementMultiplicity_4007,
						PElementMultiplicityEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PReference_Promote_4008(
			PComponentReference target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.soadmanagement.plugin.soadmanagement.soadmanagementPackage.eINSTANCE
					.getPReference_Promote()) {
				result.add(new SOADManagementMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						SOADManagementMetamodelElementTypes.PReferencePromote_4008,
						PReferencePromoteEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PService_Promote_4009(
			PComponentService target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.soadmanagement.plugin.soadmanagement.soadmanagementPackage.eINSTANCE
					.getPService_Promote()) {
				result.add(new SOADManagementMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						SOADManagementMetamodelElementTypes.PServicePromote_4009,
						PServicePromoteEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PComponentReference_Target_4010(
			PComponentService target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.soadmanagement.plugin.soadmanagement.soadmanagementPackage.eINSTANCE
					.getPComponentReference_Target()) {
				result.add(new SOADManagementMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						SOADManagementMetamodelElementTypes.PComponentReferenceTarget_4010,
						PComponentReferenceTargetEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(
			PElement source) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/destinations = source.getRoles().iterator(); destinations
				.hasNext();) {
			PRole destination = (PRole) destinations.next();
			result.add(new SOADManagementMetamodelLinkDescriptor(source,
					destination,
					SOADManagementMetamodelElementTypes.PElementRoles_4006,
					PElementRolesEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(
			PElement source) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		PMultiplicity destination = source.getMultiplicity();
		if (destination == null) {
			return result;
		}
		result.add(new SOADManagementMetamodelLinkDescriptor(source,
				destination,
				SOADManagementMetamodelElementTypes.PElementMultiplicity_4007,
				PElementMultiplicityEditPart.VISUAL_ID));
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PReference_Promote_4008(
			PReference source) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/destinations = source.getPromote().iterator(); destinations
				.hasNext();) {
			PComponentReference destination = (PComponentReference) destinations
					.next();
			result.add(new SOADManagementMetamodelLinkDescriptor(source,
					destination,
					SOADManagementMetamodelElementTypes.PReferencePromote_4008,
					PReferencePromoteEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PService_Promote_4009(
			PService source) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		PComponentService destination = source.getPromote();
		if (destination == null) {
			return result;
		}
		result.add(new SOADManagementMetamodelLinkDescriptor(source,
				destination,
				SOADManagementMetamodelElementTypes.PServicePromote_4009,
				PServicePromoteEditPart.VISUAL_ID));
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PComponentReference_Target_4010(
			PComponentReference source) {
		LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.soapattern.plugin.diagram.part.SOADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/destinations = source.getTarget().iterator(); destinations
				.hasNext();) {
			PComponentService destination = (PComponentService) destinations
					.next();
			result.add(new SOADManagementMetamodelLinkDescriptor(
					source,
					destination,
					SOADManagementMetamodelElementTypes.PComponentReferenceTarget_4010,
					PComponentReferenceTargetEditPart.VISUAL_ID));
		}
		return result;
	}

}
